It is desirable to provide external programming of a pre-manufactured device in order to change the configuration after the device is manufactured. One way to provide a variety of programming options is to use a technology that can be programmed multiple times, such as an electrically erasable programmable read only memory (EEPROM). Another possibility would be to use external pins to select an unused page in a programmable array. Yet another possibility would be to use special packaging which would allow the electrically programmable array to be erased and re-programmed. Such a technology may include ultraviolet (UV) erasure of an electrically programmable read only memory.
A disadvantage with any of these methods is the fact that they require relatively complex technology to implement a programmable structure that can be written to more than one time. The method of providing additional pins increases the entire pin count of the device, which reduces the desirability of the technology. The possibility of providing a special package that allows a one-time programmable structure to be erased is also more complex than a traditional plastic package.
Referring to FIG. 1, a circuit 10 is shown implementing an EEPROM as a programmable memory. The circuit 10 generally comprises a number of internal components, an EEPROM portion 12, one or more programming control inputs 14 and one or more outputs 16. The output 16 may be, in an example of a clock generator circuit, an output clock. The internal components, in the example of a clock generator circuit, may be a phase-locked loop PLL 18, a PLL 20 and a miscellaneous logic block 22. The programming control received at the input 14 is presented to an input 24 of the EERPOM 12. The EEPROM 12 presents a signal to an input 28 of the miscellaneous logic block 22. The miscellaneous logic block 22 presents an output 30 that presents a signal to the output 16. Whatever function is implemented with the miscellaneous logic block 22, the EEPROM 12 presents control information in response to configuration information received from the external inputs 14. However, it would be desirable to replace the EEPROM 12 with a less complex one-time programmable technology without losing the ability to program the circuit 10 more than one time.